package com.platform.usercenter.mapper;


import com.platform.usercenter.domain.ContactFrequent;
import com.platform.usercenter.domain.vo.ContactVo;
import org.apache.ibatis.annotations.Param;

import java.util.ArrayList;
import java.util.List;

/**
 * 常用联系人通讯录Mapper接口
 * 
 * @author platform
 * @date 2023-10-08
 */
public interface ContactFrequentMapper 
{
    /**
     * 查询常用联系人通讯录
     * 
     * @param contactId 常用联系人通讯录主键
     * @return 常用联系人通讯录
     */
    public ContactFrequent selectContactFrequentByContactId( Long contactId);

    /**
     * 查询常用联系人通讯录列表
     * 
     * @param contactFrequent 常用联系人通讯录
     * @return 常用联系人通讯录集合
     */
    public List< ContactFrequent > selectContactFrequentList( ContactFrequent contactFrequent);

    /**
     * 新增常用联系人通讯录
     * 
     * @param contactFrequent 常用联系人通讯录
     * @return 结果
     */
    public int insertContactFrequent( ContactFrequent contactFrequent);

    /**
     * 修改常用联系人通讯录
     * 
     * @param contactFrequent 常用联系人通讯录
     * @return 结果
     */
    public int updateContactFrequent( ContactFrequent contactFrequent);

    /**
     * 删除常用联系人通讯录
     * 
     * @param contactVo 常用联系人通讯录主键
     * @return 结果
     */
    public int deleteContactFrequentByContactId( ContactVo contactVo);

    /**
     * 批量删除常用联系人通讯录
     * 
     * @param contactVo 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteContactFrequentByContactIds( ContactVo contactVo );

    //查询符合条件的联系人
	List< ContactFrequent > selectContactFrequentListByContact( ContactVo contactVo );

	//根据用户id查常用联系人
    List< ContactFrequent> selectFrequentByUserId( Long userId );

    //根据用户id集合查询contactId集合
    ArrayList< Long> selectContactIdByUserIds( @Param( "userIds" ) Long[] userIds );
}
